Box2D Demo v0.2
===============

Box2D Demo demonstrates using of Box2D QML plugin to implement simple physics
enabled applications. The Box2D QML plugin follows LGPL 2.1 license.

See more information about the Box2D QML plugin at
http://gitorious.org/qml-box2d.

See more information about the Box2D physics library at
http://www.box2d.org/.

See more information about the project at
https://projects.forum.nokia.com/qmlbox2ddemo.


FILES
-------------------------------------------------------------------------------

bin/*

- Contains the compiled binaries of the application.

src/icons

- Contains the application icon.

src/qml/*

- Contains the QML elements used in the demo, the main QML file is 
  Box2DDemo.qml, which creates the World and all the Bodys in the demo.
  
src/qml/images/*

- Contains all of the graphics used in the demo.

src/qml-box2d/*

- Contains the Box2D QML plugin which is linked as statically to the demo
  application.
  
src/qml-box2d/Box2d/*

- Contains the Box2D physics library.

src/main.cpp

- Registers Box2Plugin, locks the orientation to landscape and initializes the
  declarative runtime.
  

KNOWN ISSUES
-------------------------------------------------------------------------------

- The dynamically created wheels can not be destroyed without crashing the
  application.
  
- If the objects are laying still on the simulation they will go to sleep state
  and the gravitation will no longer apply to those objects. The sleeping will
  end when any other non-sleeping object collides to the corresponding objects.
  This feature was deliberately coded to the application by setting Body
  property sleepingAllowed to true.

  
BUILD & INSTALLATION INSTRUCTIONS
-------------------------------------------------------------------------------

Preparations
~~~~~~~~~~~~

Check that you have the latest Qt/Qt SDK installed in the development 
environment and on the device.


Build & installation instructions using Qt SDK
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1. Open the Qt PRO file.
   File > Open File or Project, select pro-file.

2. Select target(s), for example 'Qt 4.7.4 for Symbian Anna (Qt SDK)', and
   press the Finish button.

3. Press the Run button to build the project and create the Symbian install 
   package. The application is installed on the device.


RUNNING THE APPLICATION
-------------------------------------------------------------------------------

The gravity applies to all objects in the simulation towards the real life
gravity depending on the orientation of the phone.

User is able to dynamically create new wheels by tapping and holding on any
empty spot on the world. By tapping and holding on top of the wheel the
user is able to apply torque to the wheel. The direction of the torque is
either clockwise or counterclockwise depending on which side of the screen the
wheel is at the time of the tap. Also by tapping on any of the boxes applies a
relatively large amount of torque to the selected box.

The application can be closed by tapping the exit register plate on the upper
right corner.


COMPATIBILITY
-------------------------------------------------------------------------------

- Qt 4.7.4 for Symbian Anna
- Qt Mobility 1.2.1
- Maemo 5
     
Tested on:

- Nokia N8-00
- Nokia E7-00
- Nokia C7-00
- Nokia C6-01
- Nokia N900

Developed with:

- QtSDK 1.1.4


VERSION HISTORY
-------------------------------------------------------------------------------
0.2 Added exit button. Added Maemo support.
0.1 First public version in Projects Forum Nokia.
